package com.newhero.product.module.sys.service;

import java.util.List;
import java.util.Map;

import com.newhero.product.common.mybatis.plugins.Page;
import com.newhero.product.common.mybatis.plugins.pagination.Pagination;
import com.newhero.product.common.mybatis.service.IService;
import com.newhero.product.module.sys.model.User;
import com.newhero.product.module.sys.model.vo.UserVo;

/**
 * 
 * @ClassName: IUserService 
 * @Description: 用户相关业务接口
 * @author Caolj 648198687@qq.com 
 * @date 2017-4-18 下午1:45:49
 */
public interface IUserService extends IService<User>{
	
	List<User> selectByLoginName(UserVo userVo);

	void updatePwdByUserId(String userId, String md5Hex);

	void deleteUserById(String id);
	
	/**
	 * 检查用户登录名是否存在
	 * @param userID 用户ID
	 * @param userLoginName 用户登录名
	 * @return
	 */
	boolean checkIfUserLoginNameExsit(String userID, String userLoginName);
	/**
	 * 根据参数分页查询用户列表
	 * @param page 分页对象
	 * @param params 查询参数
	 * @return
	 */
	List<UserVo> selectUserVoPage(Pagination page, Map<String, Object> params);
	/**
	 * 根据参数分页查询用户列表
	 * @param dataPage	分页对象
	 * @param params	参数
	 * @return	Map集合列表
	 */
	List<UserVo> selectUserListPage(
			Page<UserVo> dataPage, Map<String, Object> params);
}
